/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package sv.com.intesal.proyecto.controlador;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;
import sv.com.intesal.clases.Mensaje;
import sv.com.intesal.conexion.cConexion;
import sv.com.intesal.proyecto.bean.TipoCliente;
import sv.com.intesal.proyecto.sql.SQLTipoCliente;

/**
 *
 * @author JM
 */
public class TipoClienteControlador {

    public List<TipoCliente> fillComboBox() throws Exception {

        List<TipoCliente> list = new ArrayList<TipoCliente>();
        try {
            ResultSet rs = cConexion.conectar().prepareStatement(SQLTipoCliente.buscarTipoClientes).executeQuery();
            while (rs.next()) {
                TipoCliente tc = new TipoCliente();
                tc.setCodigo_cl(rs.getInt("id_tc"));
                tc.setNombre_cl(rs.getString("nombre_tc"));
                list.add(tc);
            }
            rs.close();
            return list;
        } catch (Exception ex) {
            throw new Exception(ex);
        }
    }

    public List<TipoCliente> fillGrid() throws Exception {
        try {
            return this.fillComboBox();
        } catch (Exception e) {
            throw new Exception(e);
        }
    }

    public void setMantenimientoTipoCliente(TipoCliente tc) throws Exception {
        PreparedStatement ps = null;
        Connection cnn = null;
        try {
            cnn = cConexion.conectar();
            if (tc.getCodigo_cl() == 0) {
                ps = cnn.prepareStatement(SQLTipoCliente.insertTipoCliente);
            } else {
                ps = cnn.prepareStatement(SQLTipoCliente.updateTipoCliente);
                ps.setInt(2, tc.getCodigo_cl());
            }
            ps.setString(1, tc.getNombre_cl());
            ps.executeUpdate();
            ps.close();
            cnn.close();

            Mensaje m = new Mensaje();
            if (tc.getCodigo_cl() == 0) {
                m.messageInfo(m.getIinformation());
            } else {
                m.messageInfo(m.getImodificada());
            }
        } catch (Exception ex) {
            throw new Exception(ex);
        }
    }
}
